﻿using System;
namespace Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik {
    
    
    public partial class AsiOtsing : global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IAsiOtsing {
        
        private System.Boolean? @__eXCLUDE;
        
        private System.Int64? @__asjaObjektID;
        
        private string @__asjaNR;
        
        private System.Collections.Generic.List<System.Int64?> @__asjaLiikKL = new System.Collections.Generic.List<System.Int64?>();
        
        private System.DateTime? @__asjaAlgusKP;
        
        private System.DateTime? @__asjaAlgusKPVahemikuLoppKP;
        
        private System.Int64? @__asjaSeisundKL;
        
        private System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IMenetlusOtsing> @__menetlused = new System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IMenetlusOtsing>();
        
        private System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IOsalineOtsing> @__osalised = new System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IOsalineOtsing>();
        
        private System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IOsalineOtsing> @__byrooOsalised = new System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IOsalineOtsing>();
        
        public AsiOtsing() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public AsiOtsing(System.Boolean? @eXCLUDE, System.Int64? @asjaObjektID, string @asjaNR, System.Collections.Generic.List<System.Int64?> @asjaLiikKL, System.DateTime? @asjaAlgusKP, System.DateTime? @asjaAlgusKPVahemikuLoppKP, System.Int64? @asjaSeisundKL, System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IMenetlusOtsing> @menetlused, System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IOsalineOtsing> @osalised, System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IOsalineOtsing> @byrooOsalised) {
            this.@__eXCLUDE = @eXCLUDE;
            this.@__asjaObjektID = @asjaObjektID;
            this.@__asjaNR = @asjaNR;
            this.@__asjaLiikKL = @asjaLiikKL;
            this.@__asjaAlgusKP = @asjaAlgusKP;
            this.@__asjaAlgusKPVahemikuLoppKP = @asjaAlgusKPVahemikuLoppKP;
            this.@__asjaSeisundKL = @asjaSeisundKL;
            this.@__menetlused = @menetlused;
            this.@__osalised = @osalised;
            this.@__byrooOsalised = @byrooOsalised;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected AsiOtsing(IAsiOtsing @asiOtsing) {
            this.@__eXCLUDE = @asiOtsing.EXCLUDE;
            this.@__asjaObjektID = @asiOtsing.AsjaObjektID;
            this.@__asjaNR = @asiOtsing.AsjaNR;
            this.@__asjaLiikKL = @asiOtsing.AsjaLiikKL;
            this.@__asjaAlgusKP = @asiOtsing.AsjaAlgusKP;
            this.@__asjaAlgusKPVahemikuLoppKP = @asiOtsing.AsjaAlgusKPVahemikuLoppKP;
            this.@__asjaSeisundKL = @asiOtsing.AsjaSeisundKL;
            this.@__menetlused = @asiOtsing.Menetlused;
            this.@__osalised = @asiOtsing.Osalised;
            this.@__byrooOsalised = @asiOtsing.ByrooOsalised;
        }
        
        public virtual System.Boolean? EXCLUDE {
            get {
                return this.@__eXCLUDE;
            }
            set {
                this.@__eXCLUDE = value;
            }
        }
        
        public virtual System.Int64? AsjaObjektID {
            get {
                return this.@__asjaObjektID;
            }
            set {
                this.@__asjaObjektID = value;
            }
        }
        
        public virtual string AsjaNR {
            get {
                return this.@__asjaNR;
            }
            set {
                this.@__asjaNR = value;
            }
        }
        
        public virtual System.Collections.Generic.List<System.Int64?> AsjaLiikKL {
            get {
                return this.@__asjaLiikKL;
            }
            set {
                this.@__asjaLiikKL = value;
            }
        }
        
        public virtual System.DateTime? AsjaAlgusKP {
            get {
                return this.@__asjaAlgusKP;
            }
            set {
                this.@__asjaAlgusKP = value;
            }
        }
        
        public virtual System.DateTime? AsjaAlgusKPVahemikuLoppKP {
            get {
                return this.@__asjaAlgusKPVahemikuLoppKP;
            }
            set {
                this.@__asjaAlgusKPVahemikuLoppKP = value;
            }
        }
        
        public virtual System.Int64? AsjaSeisundKL {
            get {
                return this.@__asjaSeisundKL;
            }
            set {
                this.@__asjaSeisundKL = value;
            }
        }
        
        public virtual System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IMenetlusOtsing> Menetlused {
            get {
                return this.@__menetlused;
            }
            set {
                this.@__menetlused = value;
            }
        }
        
        public virtual System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IOsalineOtsing> Osalised {
            get {
                return this.@__osalised;
            }
            set {
                this.@__osalised = value;
            }
        }
        
        public virtual System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IOsalineOtsing> ByrooOsalised {
            get {
                return this.@__byrooOsalised;
            }
            set {
                this.@__byrooOsalised = value;
            }
        }
    }
}
